#ifndef MUTEX_H
#define MUTEX_H

#include <pthread.h>
#include <cstdlib>
#include <stdio.h>



// 
// 在 Mutex 中封装 pthread_mutex_t , 通过 ~Mutex() 对象的销毁来管理  pthread_mutex_destroy(&mu_) 销毁资源,
// 


class Mutex
{
public:
    Mutex();
    ~Mutex();

    void Lock();
    void Unlock();

private:
    pthread_mutex_t mu_;

    // No copying
    Mutex(const Mutex &) = delete;
    void operator=(const Mutex &) = delete;
};

#endif
